package com.ecoolex.ying.space.ws;

import java.util.Date;

import com.ecoolex.framework.common.exception.BizException;
import com.ecoolex.framework.common.pojo.Page;
import com.ecoolex.framework.common.pojo.Pagination;
import com.ecoolex.framework.common.pojo.Sorting;
import com.ecoolex.ying.space.entity.UserWorksComment;

public interface UserWorksCommentService {

	UserWorksComment addUserWorksComment(UserWorksComment record,String createUser) throws BizException;
	
	UserWorksComment addUserWorksReply(UserWorksComment record,String createUser) throws BizException;
	
	boolean praseComment(Integer commentId, String updateUser) throws BizException;
	
	void delete(UserWorksComment record , String updateUser) throws BizException;
	
	UserWorksComment getByIdForH5(Integer commentId);
	
	Pagination<UserWorksComment> queryCommentForH5(Date now,Integer worksId,Sorting[] sorts, Page page);
	
	Pagination<UserWorksComment> queryReplyForH5(Integer lastCommentId,Date now,Sorting[] sorts, Page page);
	
	Pagination<UserWorksComment> queryByCommentUserIdForH5(Integer commentUserId,Sorting[] sorts, Page page);
	
	Pagination<UserWorksComment> queryByBeCommentUserIdForH5(Integer beCommentUserId,Date now,Sorting[] sorts, Page page);
	
	long unreadReceivedCommentCount(Integer userId);
	
	UserWorksComment getById(Integer commentId);
	
	Pagination<UserWorksComment> queryByOpus(String title,Sorting[] sorts, Page page);
	
	Pagination<UserWorksComment> queryByInspiration(String title,Sorting[] sorts, Page page);
	
	void updateUserWorksCommentReadState(Integer readUserId,String createUser) throws BizException;
}
